type StringToUnion<T extends string,U = never> = T extends `${infer Left}${infer Rest}`?StringToUnion<Rest,U | Left>:U
